home *** CD-ROM | disk | FTP | other *** search
/ AmigActive 10 / AACD 10.iso / CDTools / MUIRexx / demos / MUIRexxDock / dock_save.rexx < prev    next >
OS/2 REXX Batch file  |  1997-05-02  |  963b  |  55 lines

  1. /* */
  2. options results
  3. parse arg m' 'flag' 'value
  4.  
  5. address dock
  6.  
  7. getvar 'F'||m
  8. flags = result
  9.  
  10. if flag ~= '' then do
  11.     if flag = 'DOCK' then do
  12.         if value then setvar 'X'||m 'DOCK'm+1
  13.         else do
  14.             setvar 'X'||m ''
  15.             window ID 'DOCK'm+1 CLOSE
  16.         end
  17.     end
  18.     else do
  19.         if value then flags = flags flag
  20.         else do
  21.             i = index(flags,flag)
  22.             n = length(flag)
  23.             flags = substr(flags,1,i-1)||substr(flags,i+n)
  24.         end
  25.         setvar 'F'||m flags
  26.     end
  27. end
  28.  
  29. getvar 'D'||m
  30. n = result
  31. dockname = 'DOCK'm
  32.  
  33. call open('dock',dockname,'W')
  34.  
  35. getvar 'X'||m
  36. call writeln('dock',result)
  37.  
  38. call writeln('dock',flags)
  39.  
  40. do i = 1 to n
  41.     getvar B||m||i
  42.     entry = result
  43.     if entry ~= '' then call writeln('dock',entry)
  44. end
  45. call close('dock')
  46.  
  47. if flag ~= '' then do
  48.     if flag = 'DOCK' then do
  49.         if ~value then exit
  50.         m = m + 1
  51.     end
  52.     call dock m
  53.     call dock_mode m 0 0
  54. end
  55.